统一(简单)专题图 Sample详情
最后更新时间:2019年6月17日
统一专题图采用单一符号信息配置图层中的所有图元,主要用于强调数据的分布特征。
1
map = aMapView.getMap(); vectorLayer = (VectorLayer) map.getLayer(i);
2
根据当前图层类型创建相应几何图形信息(GeomInfo),在此以区图层为例。
//创建区几何图形信息对象 RegInfo regInfo = new RegInfo(); regInfo.setFillClr((int) (1 + Math.random() * (1500 - 1 + 1))); //设置填充颜色(参考MapGIS颜色库颜色编号)
3
创建统一专题图绘制信息对象(ThemeInfo),调用专题图信息对象的setGeoInfo方法设置图形信息,同时设置其专题图名称、是否显示、最大最小显示比等参数。
ThemeInfo themeInfo = new ThemeInfo(); //创建简单专题图绘制信息对象 themeInfo.setGeoInfo(regInfo ); //为专题图绘制信息对象设置图形信息 themeInfo.setCaption("简单专题图"); //设置名称 themeInfo.setIsVisible(true); //设置是否显示 themeInfo.setMaxScale(0); //设置最大显示比 themeInfo.setMinScale(0); //设置最小显示比
4
创建简单专题图对象(SimpleTheme),调用其setThemeInfo方法设置专题图信息,同时设置专题图的名称、可见性等信息。
SimpleTheme simpleTheme = new SimpleTheme(); //创建简单专题图对象 simpleTheme.setName("专题图"); //设置专题图的名称 simpleTheme.setVisible(true); //设置专题图的可见性 simpleTheme.setThemeInfo(themeInfo); //设置简单专题图的绘制信息
5
获取专题图集合Thems,调用其append方法添加专题图。
// 将专题图添加到对应矢量图层上 vectorLayer.getThemes().append(simpleTheme); //停止当前的获取数据的请求 aMapView.stopCurRequest(new MapView.MapViewStopCurRequestCallback() { public void onDidStopCurRequest() { aMapView.forceRefresh(); //刷新地图视图 } });
统一专题图实现效果如下图所示: